package www.ym.com.common;

import lombok.Data;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * 通用返回结果，服务端响应的数据最终都会封装成此对象
 *
 * @param <T>
 */
@Data
public class R<T> {
    private Integer code;  //编码：1成功，其他数字和0为失败
    private String msg;  //错误信息
    private T data;   //数据

//    private Map map=new HashMap<>();  //动态数据

    public static <T> R<T> success(T object,String msg) {
        R<T> r = new R<T>();
        r.code = 1;
        if (object==null){
            r.data = null;
            r.msg=msg;
            return r;
        }
        if (msg==null){
            r.data = object;
            r.msg=null;
            return r;
        }
        r.data = object;
        r.msg=msg;
        return r;
    }



    public static <T> R<T> error(String msg) {
        R r = new R();
        r.msg = msg;
        r.code = 0;
        return r;
    }

//    public R<T> add(String key,Object value){
//        this.map.put(key,value);
//        return this;
//    }
}
